#include <iostream>
#include <map>
#include <algorithm>
#include <string>
#include <time.h>
#include <stdlib.h>
#include <math.h>


using namespace std;
double MonteCarloPI(long long n)//这里的n是要发射的次数，返回一个double数值
{
    double Pi;
    double x,y;
    int i,sum;

    sum=0;
    // srand(time(NULL));
    for (i=0;i<n;i++)
    {
        x=(double)rand()/RAND_MAX;
        y=(double)rand()/RAND_MAX;
        if((pow(x,2)+pow(y,2))<=1)
        {   
            sum++;
        }
    }
    //pi*r**2/4=圆面积/正方体
    //所以pi=4×圆面积/正方体
    Pi=(double)4*sum/n; //这一定要注意加上一个double，不然出来的数据只有三，这个在原书中没有体现
    cout<<Pi<<endl;
    return Pi;
}


int main()
{
    double out=MonteCarloPI(80000);
    cout<<out<<endl;
    return 0;

}